package io.github.lhdxhl.wechatpay.param;

import io.github.lhdxhl.wechatpay.model.*;

/**
 * @author lsk
 * @version 2.0.0
 * @ClassName AbstractParam.java
 * @Description 支付信息基础类
 * @createTime 2022年09月26日 11:21:00
 */
public abstract class AbstractParam {

    /**
     * 商品描述
     */
    private String description;

    /**
     * 商户系统内部订单号，只能是数字、大小写字母_-*且在同一个商户号下唯一
     */
    private String outTradeNo;


    /**
     * 订单失效时间，遵循rfc3339标准格式，格式为yyyy-MM-DDTHH:mm:ss+TIMEZONE，yyyy-MM-DD表示年月日
     */
    private String timeExpire;

    /**
     * 附加数据
     */
    private String attach;

    /**
     * 异步接收微信支付结果通知的回调地址，通知url必须为外网可访问的url，不能携带参数。 公网域名必须为https，
     * 如果是走专线接入，使用专线NAT IP或者私有回调域名可使用http
     */
    private String notifyUrl;

    /**
     * 订单优惠标记
     */
    private String goodsTag;


    /**
     * 电子发票入口开放标识:传入true时，支付成功消息和支付详情页将出现开票入口。
     * 需要在微信支付商户平台或微信公众平台开通电子发票功能，传此字段才可生效
     */
    private String supportFapiao;

    /**
     * 订单金额信息
     */
    private AmountModel amount;

    /**
     * 支付者信息
     */
    private PayerModel payer;

    /**
     * 优惠功能
     */
    private DetailModel detail;

    /**
     * 场景信息
     */
    private SceneModel sceneInfo;

    /**
     * 结算信息
     */
    private StoreModel settleInfo;
}
